home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_readline.idb / usr / freeware / include / readline / rlstdc.h.z / rlstdc.h
Encoding:
C/C++ Source or Header  |  1999-04-16  |  2.0 KB  |  80 lines

  1. /* stdc.h -- macros to make source compile on both ANSI C and K&R C
  2.    compilers. */
  3.  
  4. /* Copyright (C) 1993 Free Software Foundation, Inc.
  5.  
  6.    This file is part of GNU Bash, the Bourne Again SHell.
  7.  
  8.    Bash is free software; you can redistribute it and/or modify it
  9.    under the terms of the GNU General Public License as published by
  10.    the Free Software Foundation; either version 1, or (at your option)
  11.    any later version.
  12.  
  13.    Bash is distributed in the hope that it will be useful, but WITHOUT
  14.    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  15.    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
  16.    License for more details.
  17.  
  18.    You should have received a copy of the GNU General Public License
  19.    along with Bash; see the file COPYING.  If not, write to the Free
  20.    Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
  21.  
  22. #if !defined (_RL_STDC_H_)
  23. #define _RL_STDC_H_
  24.  
  25. /* Adapted from BSD /usr/include/sys/cdefs.h. */
  26.  
  27. /* A function can be defined using prototypes and compile on both ANSI C
  28.    and traditional C compilers with something like this:
  29.     extern char *func __P((char *, char *, int)); */
  30.  
  31. #if defined (__STDC__)
  32.  
  33. #  if !defined (__P)
  34. #    define __P(protos) protos
  35. #  endif
  36. #  define __STRING(x) #x
  37.  
  38. #  if !defined (__GNUC__)
  39. #    define inline
  40. #  endif
  41.  
  42. #else /* !__STDC__ */
  43.  
  44. #  if !defined (__P)
  45. #    define __P(protos) ()
  46. #  endif
  47. #  define __STRING(x) "x"
  48.  
  49. #if defined (__GNUC__)        /* gcc with -traditional */
  50. #  if !defined (const)
  51. #    define const  __const
  52. #  endif
  53. #  if !defined (inline)
  54. #    define inline __inline
  55. #  endif
  56. #  if !defined (signed)
  57. #    define signed __signed
  58. #  endif
  59. #  if !defined (volatile)
  60. #    define volatile __volatile
  61. #  endif
  62. #else /* !__GNUC__ */
  63. #  if !defined (const)
  64. #    define const
  65. #  endif
  66. #  if !defined (inline)
  67. #    define inline
  68. #  endif
  69. #  if !defined (signed)
  70. #    define signed
  71. #  endif
  72. #  if !defined (volatile)
  73. #    define volatile
  74. #  endif
  75. #endif /* !__GNUC__ */
  76.  
  77. #endif /* !__STDC__ */
  78.  
  79. #endif /* !_RL_STDC_H_ */
  80.